package com.joysuch.wwyt.attendant.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.joysuch.wwyt.attendant.bean.AttendantRecordAppBean;
import com.joysuch.wwyt.attendant.bean.AttendantRecordReqAppBean;
import com.joysuch.wwyt.attendant.bean.AttendantRecordSearchBean;
import com.joysuch.wwyt.attendant.bean.AttendantStayTimeBean;
import com.joysuch.wwyt.attendant.bean.vo.AttendantRecordDetailVo;
import com.joysuch.wwyt.attendant.entity.AttendantPlanContent;
import com.joysuch.wwyt.attendant.entity.AttendantRecord;
import com.joysuch.wwyt.core.common.ajax.ResultBean;
import org.springframework.data.domain.Pageable;

import java.text.ParseException;
import java.util.List;

/**
 * @Description //TODO
 * @Date 2023/2/15 11:47
 * @Author Leong
 **/
public interface AttendantRecordService extends IService<AttendantRecord> {
    ResultBean findPage(AttendantRecordSearchBean searchBean);

    ResultBean selectPage(Pageable page, Integer way);

    AttendantRecordAppBean findByPlanId(Long id);

    /**
     * 保存跟班记录
     *
     * @param bean
     */
    void saveEntity(AttendantRecordReqAppBean bean) throws ParseException;

    /**
     *
     * @param id
     * @return
     */
    AttendantRecordDetailVo detail(Long id);

    ResultBean track(Long id)throws IllegalArgumentException;

    void delete(Long id);

    String stay(Long id);

    List<AttendantStayTimeBean> findNoDuration();

    void updateDuration(Long id, String duration);

    AttendantRecord selectByPlanId(Long id);

    void updateRecord(List<AttendantPlanContent> list);

}
